/*
 * CSS classes originally from Minesweeper Online
 * https://exceptionnotfound.net/minesweeper-in-blazor-webassembly-part-2-the-blazor-component/
 */

html {
    height: 95%
}

body {
    margin-left: 0;
    margin-top: 15px;
    font-family: arial;
    font-size: 12px;
    height: 100%
}

.night-mode {
    background-color: black;
    color: #888
}

.ess-ee-oh {
    display: none
}

label {
    display: inline-block;
    margin-bottom: 3px
}

.outer-container {
    vertical-align: top;
    text-align: left;
    text-align: center
}

.inner-container {
    display: inline-block;
    text-align: left
}

.left-column,
#center-column,
.right-column {
    float: left
}

@media only screen and (max-width:700px) {
    .left-column,
    .right-column {
        display: none
    }

    #center-column {
        margin-left: 20px
    }

    body {
        user-select: none;
        -webkit-user-select: none;
        -moz-user-select: none;
        -ms-user-select: none
    }

    #game {
        tap-highlight-color: rgba(0, 0, 0, 0);
        -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
        -moz-tap-highlight-color: rgba(0, 0, 0, 0);
        -ms-tap-highlight-color: rgba(0, 0, 0, 0)
    }
}

.left-column {
    margin-right: 10px
}

.left-column,
.right-column {
    width: 160px
}

#game-container {
    position: relative;
    margin-right: 20px
}

#options-link,
#display-link,
#controls-link,
#import-link,
#export-link {
    color: blue;
    text-decoration: underline;
    cursor: pointer
}

.night-mode #options-link,
.night-mode #display-link,
.night-mode #controls-link,
.night-mode #import-link,
.night-mode #export-link,
.night-mode a {
    color: #069
}

#game {
    background-color: silver
}

.night-mode #game {
    background-color: #7e7e7e
}

.dialog {
    background-color: #EEE;
    border: 1px solid #444;
    position: absolute;
    display: none;
    z-index: 1
}

.night-mode .dialog {
    background-color: #BBB;
    color: #444
}

.dialog-title {
    color: white;
    font-weight: bold;
    background-color: #06f
}

.night-mode .dialog-title {
    color: #AAA;
    background-color: #184292
}

.dialog-bar {
    background-color: #DDD
}

.night-mode .dialog-bar {
    background-color: #AAA
}

#controls ul {
    padding: 0 0 0 12px;
    margin: 0
}

#controls li {
    margin-bottom: 2px
}

.dialog-close {
    color: white;
    text-decoration: none;
    font-weight: bold;
    font-size: 20px;
    line-height: 15px;
    cursor: pointer
}

.night-mode .dialog-close {
    color: #AAA
}

.dialog-text-input {
    width: 30px;
    font-size: 12px
}

.dialog td {
    padding: 3px;
    white-space: nowrap
}

.dialog input[type="checkbox"],
.dialog input[type="radio"] {
    margin: 0 3px 0 0;
    vertical-align: top;
    padding: 0
}

#game div {
    float: left;
    line-height: 0;
    font-size: 0
}

#footer {
    margin-top: 30px;
    margin-bottom: 30px;
    clear: both
}

#message {
    margin-top: 15px;
    color: green;
    width: 450px
}

#share {
    display: none;
    width: 480px;
    margin-top: 15px;
    position: relative
}

#share-close {
    position: absolute;
    top: 0;
    right: 0;
    font-weight: bold;
    cursor: pointer;
    color: #ccc
}

#share-blurb {
    margin-top: 10px;
    margin-left: 10px;
    padding: 5px;
    background: #f4f4f4;
    position: relative
}

#share-open-quote {
    position: absolute;
    font-size: 56px;
    line-height: 56px;
    color: #ccc;
    left: -12px;
    top: -11px
}

#share-close-quote {
    position: absolute;
    font-size: 56px;
    line-height: 56px;
    color: #ccc;
    left: 460px;
    top: 20px
}

#scores-container {
    margin-top: 20px;
    margin-bottom: 20px
}

#scores-tabs {
    height: 30px
}

.scores-tab {
    float: left;
    margin-right: 20px;
    cursor: pointer;
    color: blue;
    text-decoration: underline
}

.scores-tab-selected {
    font-weight: bold;
    color: black
}

.night-mode .scores-tab {
    color: #666
}

.night-mode .scores-tab-selected {
    color: #069
}

.scores-pane {
    width: 500px
}

    .scores-pane table {
        width: 100%
    }

    .scores-pane th,
    .scores-pane td {
        width: 33%;
        text-align: left;
        vertical-align: top
    }

    .scores-pane th {
        padding-bottom: 5px
    }

.scores-number {
    float: left;
    width: 20px;
    clear: left
}

.scores-name {
    float: left;
    width: 115px
}

.flag-animation {
    position: absolute;
    pointer-events: none;
    transition: top .3s, left .3s, width .3s, height .3s, opacity .3s;
    -webkit-transition: top .3s, left .3s, width .3s, height .3s, opacity .3s;
    -moz-transition: top .3s, left .3s, width .3s, height .3s, opacity .3s;
    -ms-transition: top .3s, left .3s, width .3s, height .3s, opacity .3s
}

.z100 #game div {
    background-image: url('sprite100.gif')
}

.night-mode .z100 #game div {
    background-image: url('sprite100-night.gif')
}

.z100 .time0 {
    background-position: 0 0;
    width: 13px;
    height: 23px
}

.z100 .time1 {
    background-position: -13px 0;
    width: 13px;
    height: 23px
}

.z100 .time2 {
    background-position: -26px 0;
    width: 13px;
    height: 23px
}

.z100 .time3 {
    background-position: -39px 0;
    width: 13px;
    height: 23px
}

.z100 .time4 {
    background-position: -52px 0;
    width: 13px;
    height: 23px
}

.z100 .time5 {
    background-position: -65px 0;
    width: 13px;
    height: 23px
}

.z100 .time6 {
    background-position: -78px 0;
    width: 13px;
    height: 23px
}

.z100 .time7 {
    background-position: -91px 0;
    width: 13px;
    height: 23px
}

.z100 .time8 {
    background-position: -104px 0;
    width: 13px;
    height: 23px
}

.z100 .time9 {
    background-position: -117px 0;
    width: 13px;
    height: 23px
}

.z100 .time- {
    background-position: -130px 0;
    width: 13px;
    height: 23px
}

.z100 .open0 {
    background-position: 0 -23px;
    width: 16px;
    height: 16px
}

.z100 .open1 {
    background-position: -16px -23px;
    width: 16px;
    height: 16px
}

.z100 .open2 {
    background-position: -32px -23px;
    width: 16px;
    height: 16px
}

.z100 .open3 {
    background-position: -48px -23px;
    width: 16px;
    height: 16px
}

.z100 .open4 {
    background-position: -64px -23px;
    width: 16px;
    height: 16px
}

.z100 .open5 {
    background-position: -80px -23px;
    width: 16px;
    height: 16px
}

.z100 .open6 {
    background-position: -96px -23px;
    width: 16px;
    height: 16px
}

.z100 .open7 {
    background-position: -112px -23px;
    width: 16px;
    height: 16px
}

.z100 .open8 {
    background-position: -128px -23px;
    width: 16px;
    height: 16px
}

.z100 .blank {
    background-position: 0 -39px;
    width: 16px;
    height: 16px
}

.z100 .bombflagged {
    background-position: -16px -39px;
    width: 16px;
    height: 16px
}

.z100 .bombdeath {
    background-position: -32px -39px;
    width: 16px;
    height: 16px
}

.z100 .bombmisflagged {
    background-position: -48px -39px;
    width: 16px;
    height: 16px
}

.z100 .bombrevealed {
    background-position: -64px -39px;
    width: 16px;
    height: 16px
}

.z100 .question {
    background-position: -80px -39px;
    width: 16px;
    height: 16px
}

.z100 .questionpressed {
    background-position: -96px -39px;
    width: 16px;
    height: 16px
}

.z100 .facesmile {
    background-position: 0 -55px;
    width: 26px;
    height: 26px
}

.z100 .facepressed {
    background-position: -26px -55px;
    width: 26px;
    height: 26px
}

.z100 .faceooh {
    background-position: -52px -55px;
    width: 26px;
    height: 26px
}

.z100 .facedead {
    background-position: -78px -55px;
    width: 26px;
    height: 26px
}

.z100 .facewin {
    background-position: -104px -55px;
    width: 26px;
    height: 26px
}

.z100 .bordertl {
    background-position: 0 -81px;
    width: 10px;
    height: 10px
}

.z100 .bordertr {
    background-position: -10px -81px;
    width: 10px;
    height: 10px
}

.z100 .borderbl {
    background-position: -20px -81px;
    width: 10px;
    height: 10px
}

.z100 .borderbr {
    background-position: -30px -81px;
    width: 10px;
    height: 10px
}

.z100 .bordertb {
    background-position: -40px -81px;
    width: 16px;
    height: 10px
}

.z100 .borderjointl {
    background-position: -56px -81px;
    width: 10px;
    height: 10px
}

.z100 .borderjointr {
    background-position: -66px -81px;
    width: 10px;
    height: 10px
}

.z100 .borderlr {
    background-position: -134px -39px;
    width: 10px;
    height: 16px
}

.z100 .borderlrlong {
    background-position: -134px -39px;
    width: 10px;
    height: 32px
}

.z100 #mines_hundreds {
    margin: 4px 0 5px 6px
}

.z100 #mines_tens {
    margin: 4px 0 5px 0
}

.z100 #mines_ones {
    margin: 4px 0 5px 0
}

.z100 #seconds_hundreds {
    margin: 4px 0 5px 0
}

.z100 #seconds_tens {
    margin: 4px 0 5px 0
}

.z100 #seconds_ones {
    margin: 4px 6px 5px 0
}

.z100 #face {
    margin-top: 3px;
    margin-bottom: 3px
}

.z100 .dialog {
    left: 16px;
    top: 74px
}

.z150 #game div {
    background-image: url('sprite150.gif')
}

.night-mode .z150 #game div {
    background-image: url('sprite150-night.gif')
}

.z150 .time0 {
    background-position: 0 0;
    width: 20px;
    height: 35px
}

.z150 .time1 {
    background-position: -20px 0;
    width: 20px;
    height: 35px
}

.z150 .time2 {
    background-position: -39px 0;
    width: 20px;
    height: 35px
}

.z150 .time3 {
    background-position: -59px 0;
    width: 20px;
    height: 35px
}

.z150 .time4 {
    background-position: -78px 0;
    width: 20px;
    height: 35px
}

.z150 .time5 {
    background-position: -98px 0;
    width: 20px;
    height: 35px
}

.z150 .time6 {
    background-position: -117px 0;
    width: 20px;
    height: 35px
}

.z150 .time7 {
    background-position: -137px 0;
    width: 20px;
    height: 35px
}

.z150 .time8 {
    background-position: -156px 0;
    width: 20px;
    height: 35px
}

.z150 .time9 {
    background-position: -176px 0;
    width: 20px;
    height: 35px
}

.z150 .time- {
    background-position: -195px 0;
    width: 20px;
    height: 35px
}

.z150 .open0 {
    background-position: 0 -35px;
    width: 24px;
    height: 24px
}

.z150 .open1 {
    background-position: -24px -35px;
    width: 24px;
    height: 24px
}

.z150 .open2 {
    background-position: -48px -35px;
    width: 24px;
    height: 24px
}

.z150 .open3 {
    background-position: -72px -35px;
    width: 24px;
    height: 24px
}

.z150 .open4 {
    background-position: -96px -35px;
    width: 24px;
    height: 24px
}

.z150 .open5 {
    background-position: -120px -35px;
    width: 24px;
    height: 24px
}

.z150 .open6 {
    background-position: -144px -35px;
    width: 24px;
    height: 24px
}

.z150 .open7 {
    background-position: -168px -35px;
    width: 24px;
    height: 24px
}

.z150 .open8 {
    background-position: -192px -35px;
    width: 24px;
    height: 24px
}

.z150 .blank {
    background-position: 0 -59px;
    width: 24px;
    height: 24px
}

.z150 .bombflagged {
    background-position: -24px -59px;
    width: 24px;
    height: 24px
}

.z150 .bombdeath {
    background-position: -48px -59px;
    width: 24px;
    height: 24px
}

.z150 .bombmisflagged {
    background-position: -72px -59px;
    width: 24px;
    height: 24px
}

.z150 .bombrevealed {
    background-position: -96px -59px;
    width: 24px;
    height: 24px
}

.z150 .question {
    background-position: -120px -59px;
    width: 24px;
    height: 24px
}

.z150 .questionpressed {
    background-position: -144px -59px;
    width: 24px;
    height: 24px
}

.z150 .facesmile {
    background-position: 0 -83px;
    width: 39px;
    height: 39px
}

.z150 .facepressed {
    background-position: -39px -83px;
    width: 39px;
    height: 39px
}

.z150 .faceooh {
    background-position: -78px -83px;
    width: 39px;
    height: 39px
}

.z150 .facedead {
    background-position: -117px -83px;
    width: 39px;
    height: 39px
}

.z150 .facewin {
    background-position: -156px -83px;
    width: 39px;
    height: 39px
}

.z150 .bordertl {
    background-position: 0 -122px;
    width: 15px;
    height: 15px
}

.z150 .bordertr {
    background-position: -15px -122px;
    width: 15px;
    height: 15px
}

.z150 .borderbl {
    background-position: -30px -122px;
    width: 15px;
    height: 15px
}

.z150 .borderbr {
    background-position: -45px -122px;
    width: 15px;
    height: 15px
}

.z150 .bordertb {
    background-position: -60px -122px;
    width: 24px;
    height: 15px
}

.z150 .borderjointl {
    background-position: -84px -122px;
    width: 15px;
    height: 15px
}

.z150 .borderjointr {
    background-position: -99px -122px;
    width: 15px;
    height: 15px
}

.z150 .borderlr {
    background-position: -201px -59px;
    width: 15px;
    height: 24px
}

.z150 .borderlrlong {
    background-position: -201px -59px;
    width: 15px;
    height: 48px
}

.z150 #mines_hundreds {
    margin: 6px 0 7px 9px
}

.z150 #mines_tens {
    margin: 6px 0 7px 0
}

.z150 #mines_ones {
    margin: 6px 0 7px 0
}

.z150 #seconds_hundreds {
    margin: 6px 0 7px 0
}

.z150 #seconds_tens {
    margin: 6px 0 7px 0
}

.z150 #seconds_ones {
    margin: 6px 9px 7px 0
}

.z150 #face {
    margin-top: 4px;
    margin-bottom: 5px
}

.z150 .dialog {
    left: 24px;
    top: 102px
}

.z200 #game div {
    background-image: url('sprite200.gif')
}

.night-mode .z200 #game div {
    background-image: url('sprite200-night.gif')
}

.z200 .time0 {
    background-position: 0 0;
    width: 26px;
    height: 46px
}

.z200 .time1 {
    background-position: -26px 0;
    width: 26px;
    height: 46px
}

.z200 .time2 {
    background-position: -52px 0;
    width: 26px;
    height: 46px
}

.z200 .time3 {
    background-position: -78px 0;
    width: 26px;
    height: 46px
}

.z200 .time4 {
    background-position: -104px 0;
    width: 26px;
    height: 46px
}

.z200 .time5 {
    background-position: -130px 0;
    width: 26px;
    height: 46px
}

.z200 .time6 {
    background-position: -156px 0;
    width: 26px;
    height: 46px
}

.z200 .time7 {
    background-position: -182px 0;
    width: 26px;
    height: 46px
}

.z200 .time8 {
    background-position: -208px 0;
    width: 26px;
    height: 46px
}

.z200 .time9 {
    background-position: -234px 0;
    width: 26px;
    height: 46px
}

.z200 .time- {
    background-position: -260px 0;
    width: 26px;
    height: 46px
}

.z200 .open0 {
    background-position: 0 -46px;
    width: 32px;
    height: 32px
}

.z200 .open1 {
    background-position: -32px -46px;
    width: 32px;
    height: 32px
}

.z200 .open2 {
    background-position: -64px -46px;
    width: 32px;
    height: 32px
}

.z200 .open3 {
    background-position: -96px -46px;
    width: 32px;
    height: 32px
}

.z200 .open4 {
    background-position: -128px -46px;
    width: 32px;
    height: 32px
}

.z200 .open5 {
    background-position: -160px -46px;
    width: 32px;
    height: 32px
}

.z200 .open6 {
    background-position: -192px -46px;
    width: 32px;
    height: 32px
}

.z200 .open7 {
    background-position: -224px -46px;
    width: 32px;
    height: 32px
}

.z200 .open8 {
    background-position: -256px -46px;
    width: 32px;
    height: 32px
}

.z200 .blank {
    background-position: 0 -78px;
    width: 32px;
    height: 32px
}

.z200 .bombflagged {
    background-position: -32px -78px;
    width: 32px;
    height: 32px
}

.z200 .bombdeath {
    background-position: -64px -78px;
    width: 32px;
    height: 32px
}

.z200 .bombmisflagged {
    background-position: -96px -78px;
    width: 32px;
    height: 32px
}

.z200 .bombrevealed {
    background-position: -128px -78px;
    width: 32px;
    height: 32px
}

.z200 .question {
    background-position: -160px -78px;
    width: 32px;
    height: 32px
}

.z200 .questionpressed {
    background-position: -192px -78px;
    width: 32px;
    height: 32px
}

.z200 .facesmile {
    background-position: 0 -110px;
    width: 52px;
    height: 52px
}

.z200 .facepressed {
    background-position: -52px -110px;
    width: 52px;
    height: 52px
}

.z200 .faceooh {
    background-position: -104px -110px;
    width: 52px;
    height: 52px
}

.z200 .facedead {
    background-position: -156px -110px;
    width: 52px;
    height: 52px
}

.z200 .facewin {
    background-position: -208px -110px;
    width: 52px;
    height: 52px
}

.z200 .bordertl {
    background-position: 0 -162px;
    width: 20px;
    height: 20px
}

.z200 .bordertr {
    background-position: -20px -162px;
    width: 20px;
    height: 20px
}

.z200 .borderbl {
    background-position: -40px -162px;
    width: 20px;
    height: 20px
}

.z200 .borderbr {
    background-position: -60px -162px;
    width: 20px;
    height: 20px
}

.z200 .bordertb {
    background-position: -80px -162px;
    width: 32px;
    height: 20px
}

.z200 .borderjointl {
    background-position: -112px -162px;
    width: 20px;
    height: 20px
}

.z200 .borderjointr {
    background-position: -132px -162px;
    width: 20px;
    height: 20px
}

.z200 .borderlr {
    background-position: -268px -78px;
    width: 20px;
    height: 32px
}

.z200 .borderlrlong {
    background-position: -268px -78px;
    width: 20px;
    height: 64px
}

.z200 #mines_hundreds {
    margin: 8px 0 10px 12px
}

.z200 #mines_tens {
    margin: 8px 0 10px 0
}

.z200 #mines_ones {
    margin: 8px 0 10px 0
}

.z200 #seconds_hundreds {
    margin: 8px 0 10px 0
}

.z200 #seconds_tens {
    margin: 8px 0 10px 0
}

.z200 #seconds_ones {
    margin: 8px 12px 10px 0
}

.z200 #face {
    margin-top: 6px;
    margin-bottom: 6px
}

.z200 .dialog {
    left: 30px;
    top: 130px
}
